[AWS X-Ray]トレースをグループ化しCloud Watchメトリクスを自動作成する機能が追加されました
こんにちは、岩城です。
同僚の皆さんがre:Inventで不在の中、私ははじめてフルタイムでリモートワークしています。
家で集中できるのか不安でしたが、以外にも集中して仕事に取り組めており、安心しています。
はじめに
AWSの更新履歴を眺めていましたら、少し前にAWS X-Rayのアップデートがアナウンスされていましたのでレポートします。
AWS X-Ray Adds the Ability to Group Traces
AWS X-Rayとは
開発者は、AWS X-Ray を使用して、本番環境や分散アプリケーション (マイクロサービスアーキテクチャを使用して構築されたアプリケーションなど) を分析およびデバッグできます。X-Ray を使用すると、アプリケーションやその基盤となるサービスの実行状況を把握し、パフォーマンスの問題やエラーの根本原因を特定して、トラブルシューティングを行えます。X-Ray では、アプリケーション内で転送されるリクエストがエンドツーエンドで表示され、アプリケーションの基盤となるコンポーネントのマップも表示されます。X-Ray を使用すると、開発中か本番環境かにかかわらず、シンプルな 3 層アプリケーションから数千のサービスで構成される複雑なマイクロサービスアプリケーションまで、さまざまなアプリケーションを分析できます。
アップデート内容
AWS X-Ray Adds the Ability to Group Traces
You can now group traces to match a filter expression. In addition, X-Ray will automatically create Amazon CloudWatch metrics for traces that match a particular group. This allows you to view service graphs and create CloudWatch alarms by the group, enhancing your ability to quickly understand and fix application issues.
フィルタ式に一致するようにトレースをグループ化できるようになりました。 さらに、X-Rayは、特定のグループに一致するトレースのAmazon CloudWatchメトリックを自動的に作成します。 これにより、グループによるサービスグラフの表示とCloudWatchアラームの作成が可能になり、アプリケーションの問題をすばやく理解して修正できるようになります。(Google翻訳まま)
やってみた
前提
動作確認するためのアプリケーションとX-RAYの環境構築の手順は、以下のドキュメントに用意されているため、本稿では扱いません。「X-Ray コンソールでサービスマップを表示する」まで取り組んでください。ElasticBeanstalkでの環境構築となり10分ほどで完了します。
AWS X-Ray の開始方法
それではやってきます!
グループを作成する
はじめに、X-RayのService Map画面からグループを作成します。デフォルトと記載されたプルダウンからグループの作成をクリックします。
グループ名は自由で構いません。フィルタ式については、Scorekeepというサービスにおいて、障害が発生した場合をトレースするように設定しました。
ここで設定したフィルタは、グループ作成以降のトレースに反映されます。過去のトレースには反映されませんので注意してください。
アプリケーションを操作しエラーを発生させる
次に、アプリケーションを操作してエラーを発生させます。
グループを選択する
Service Map上で赤くなっている箇所がエラーです。先程作成したグループを選択するとエラーに関連するサービスに絞り込まれます。 エラー原因を探るときに便利です。
Cloud Watchメトリクスを確認する
最後に、続いてグループを作成すると自動で作成されるCloud Watchメトリクスを確認します。グループの詳細からメトリクス表示をクリックします。
メトリクスが表示されていることを確認できました。
さいごに
今回追加された機能を使って、エラーの発生やレスポンスタイムがX秒以上のトレースを抽出し、容易にCloud Watchで監視できるようになりました。個人的には素晴らしいアップデートなのではないかと思います。
このブログが誰かの役に立てれば幸いです。